package com.ruoyi.business.domain;

import java.math.BigDecimal;
import java.sql.Time;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 火车车站对象 train_station
 * 
 * @author ruoyi
 * @date 2025-03-06
 */
@Data
public class TrainStation extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @Excel(name = "ID")
    private Long id;

    /** 车次编号 */
    @Excel(name = "车次编号")
    private String trainCode;

    /** 站序 */
    @Excel(name = "站序")
    private Long index;

    /** 站名 */
    @Excel(name = "站名")
    private String name;

    /** 站名拼音 */
    @Excel(name = "站名拼音")
    private String namePinyin;

    /** 进站时间 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "进站时间", width = 30, dateFormat = "HH:mm:ss")
    private Time inTime;

    /** 出站时间 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "出站时间", width = 30, dateFormat = "HH:mm:ss")
    private Time outTime;

    /** 停站时长 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "停站时长", width = 30, dateFormat = "HH:mm:ss")
    private Time stopTime;

    /** 里程（公里）|从上一站到本站的距离 */
    @Excel(name = "里程") // 修正注解
    private BigDecimal km;

    /**
     * 车次编号列表，用于批量查询
     */
    @TableField(exist = false)
    private List<String> trainCodes;


}
